━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

        X680x0 単体で WWW クライアントとサーバーを動作させる方法

────────────────────────────────────



▼ この文章は


  X680x0 用に開発した WWW クライアントとサーバーを X680x0 単体(本体のみ、

増設ハードなし)で動作させる方法を解説した文章です。WebXpression や 

RoboGet はこの方法で開発されています。


  HTTP はクライアント/サーバー形式のプロトコルであるため、単純に考える

とクライアントを動かすマシンとサーバーを動かすマシンの2台が必要となりま

す。これがマルチタスクOSである UNIX であれば裏でサーバーを動かし、表で

クライアントを動かすことにより1台のマシンで開発が行えるのですが、シング

ルタスクOSである Human68K ではクライアント(WebXpression, RoboGet)と

サーバー(PersonalWS)と同時に動かすことは…実はできるのです。以下にこの

方法を解説します。



━
▼ 使用する環境


  通常、X680x0 で WWW (HTTP)クライアントを動作させる方法には以下の3通り

があります。


1)X680x0 + Neptune-X + LAN

  X680x0 に NE-2000 互換のネットワークカードを接続する同人ハードウェア

Neptune-X を接続する方法です。LAN で接続されたマシン上でサーバーを動かし、

そこに対してクライアントである X680x0 が接続するという形になります。

  欠点?は Neptune-X と LAN 環境、サーバー用マシンが別途必要になるという

事です。


2)X680x0 + モデム

  WWW 上のサーバーに接続する方法です。ダイヤルアップでサーバーに接続して

lynx や WebXpression の代わりに自作のクライアントを接続します。

  一番単純な方法ですが、欠点はクライアントに問題があった場合サーバーをハ

ングアップさせる可能性がある(まあそんな弱いサーバーは滅多に無いと思いま

すが)、電話代がかかるということです。


3)X680x0 単体

  X680x0 本体のみ、増設ハードなしで開発を行います。でもメモリは4MBく

らいあると嬉しいですね(2MBでもなんとかなるかな?)。欠点は動作が相当

重くなるということですが、開発用のテスト環境と思えば悪くないでしょう。

  この環境でハードディスク上に HTML ファイルを置いて、 PersonalWS.x を常

駐させます。次にクライアントを実行し、HTTP で PersonalWS.x にファイルを

要求すると PersonalWS.x はファイルを送信するので、これを受信して処理を行

う、という流れになります。具体的な方法は以下の通りです。



━
▼ 実行方法


1)TCP/IP ドライバのインストール

  X680x0 を TCP/IP が使える状態にします(lynx や WebXpression でネットワー

ク上のファイルが閲覧できるようになればOKです)。激光電脳倶楽部5号を利

用すると比較的簡単に TCP/IP が使えるようになるでしょう。

  この状態でダイヤルを掛ける必要はありません。モデムを外してしまっても構

いません(つないだままでも構いません)。


2)必要なファイルの確認(TCP/IP 関連)

  次に以下のファイルを確認します。

・/etc/networks

  ファイル networks に以下の行があることを確認します。
---- networks ----
127             loopback
------------------

  TCPPACKA.LZH で配布されていた networks ファイルには上記の行があります

ので、書き替えていなければ問題ありません。

  この行はネットワークアドレス 127 を loopback という名前(ネットワーク

名)で参照するということを宣言しています。ループバックとは送信した内容を

実際にはネットワークに流さず自分自身で受信することで、ネットワークのテス

トなどでよく使われます。


・/etc/hosts

  ファイル hosts に以下の行があることを確認します。
---- networks ----
127.0.0.1       localhost               localhost
------------------

  TCPPACKA.LZH で配布されていた hosts ファイルには上記の行がありますので、

書き替えていなければ問題ありません。

  この行は IP アドレス 127.0.0.1 のマシンを localhost という名前(ホスト

名)で参照すると言うことを宣言しています。localhost はマシン自身、つまり

自分自身を指すホスト名です。

  networks と hosts の設定から、localhost に対する接続は自分自身にループ

バックで接続することを意味するようになります。


3)必要なファイルの確認(HTML 関連)

  適当な HTML ファイルを用意し、ハードディスクの適当なディレクトリに入れ

ておきます。ここでは例として、以下のファイル index.htm がディレクトリ

C:\html\ にあるものとして解説します。

---- index.htm ----
<HTML>
<HEAD><TITLE>テストページ</TITLE></HEAD>
<BODY>
テスト用 HTML です。<BR>
</BODY>
</HTML>
-------------------

---- DIR C:\html ----
 ボリュームがありません C:\html
     1 ファイル      2215K Byte 使用中     22297K Byte 使用可能
 ファイル使用量         1K Byte 使用
index              htm         96  00-02-01  12:00:00
---------------------


4)xip と PersonalWS の常駐

  ここまでできたらいよいよ TCP/IP ドライバ xip を常駐させます。xip はな

るべく最新のバージョンを使用して下さい。以下のバッチファイルをご覧下さい。

---- keepws.bat ----
xip
ifconfig lp0 up
PersonalWS C:\html\
--------------------

  2行目は ifconfig による設定で、lp0 はループバック、up は有効にすると

いう事で、これにより「ループバックを有効にする」ということを宣言していま

す。

  余談ながら lp0 というのはネットワークインターフェース名と呼ばれるもの

で、例えば Neptune-X のようなイーサネットカードの場合 en0 となり、これを

有効にする場合は "ifconfig en0 up" となります(実際にはもう少し設定が必

要なのですが、ここでは割愛します)。

  3行目は PersonalWS.x の常駐です。ディレクトリ名の最後に '\' を忘れず

に付けるようにして下さい。


5)HTTP クライアントの実行

  以上で X680x0 上に HTTP サーバーが常駐しました。クライアントからサーバー

上のファイル(と言っても自分自身)を受信してみましょう。

        lynx http://localhost/index.htm
        WebXpression http://localhost/index.htm

  とすると HTTP で取得したファイルを表示します。

        lynx C:/html/index.htm
        WebXpression C:/html/index.htm

  との違いを確認してみて下さい。こちらは PersonalWS.x が動作していない

(つまりネットワークを介さない)単なるファイルの読み込みです。


6)xip と PersonalWS の常駐解除


  以下のバッチファイルをご覧下さい。

---- releasews.bat ----
PersonalWS -r
ifconfig lp0 down
xip -r
-----------------------

  2行目は先程の逆でループバック lp0 を down、つまり無効にするという事で

す。これを行ってから xip を常駐解除して下さい。



━
▼ 最後に


  このように X680x0 単体でも WWW クライアントは開発できるのです。X680x0

にももっと WWW クライアントが増えるといいですね。



(EOF)